/* Verification des champs nom necessaire normalement avec l'HTML5 */

/* Simple fonction de verication de date */
function verif_date(input)
{
	var regex = new RegExp("[/-]");
	var date = input.split(regex);
	var nbJours = new Array('',31,28,31,30,31,30,31,31,30,31,30,31);
	var result = true;
	
	if ( date['2']%4 == 0 && date['2']%100 > 0 || date['2']%400 == 0 )
		nbJours['2'] = 29;
	
	if ( isNaN(date['2']) )
		result=false;
	
	if ( isNaN(date['1']) || date['1'] > 12 || date['1'] < 1 )
		result=false;
	
	if ( isNaN(date['0']) || date['0'] > nbJours[Math.round(date['1'])] || date['0'] < 1 )
		result=false;
	
	return result;
}

$(document).ready(function() {
	/* controle global */
	$("form").submit(function(){
		var message = "";
		
		/* expression reguliere pour l'email */
		var re1 = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
		var valeur = $("#email").val();
		if(!valeur.match(re1)) {
			message += "Mauvaise adresse Email!\n";
		}
		
		/* expression reguliere URL */
		var re2 = /https?:\/\/([-\w\.]+)+(:\d+)?(\/([\w/_\.]*(\?\S+)?)?)?/;
		var valeur2 = $("#addrSite").val();
		if (!valeur2.match(re2) && valeur2!="") {
			message += "Mauvaise adresse pour votre site!\n";
		}
		
		/* expression reguliere pour les chiffres*/
		var re3 = /^\d+$/;    
		var valeur3 = $("#note").val();
		if (!valeur3.match(re3)) {
			message += "Vous devez specifier un nombre pour la note! (sans signe ni virgule)\n";
		} else if (parseInt(valeur3) < 0 || parseInt(valeur3) > 20) {
			message += "La note doit etre en 0 et 20!\n";
		}
		
		if ($("#nom").val() == "") {
			message += "Le champ Nom est vide !\n";
		}
		if ($("#message").val() == "") {
			message += "Et votre petit message ?\n";
		}
		
		var date = $("#dateG").val();
		if (!verif_date(date) && date!="") {
			message += "Mauvais format de date ?\n";
		}
		
		if (message != "") {
			alert(message);
		} else {
			alert("Le formulaire est correcte");
		}
		
		return false;
	});
});